Maven/Gradle দিয়ে Spring Security অন্তর্ভুক্ত করা

Java Technologies - স্প্রিং সিকিউরিটি (Spring Security) - Spring Security Setup এবং কনফিগারেশন
176

স্প্রিং সিকিউরিটি আপনার প্রোজেক্টে অন্তর্ভুক্ত করতে হলে Maven বা Gradle বিল্ড টুল ব্যবহার করতে পারেন। নীচে উভয় পদ্ধতির জন্য উদাহরণ দেওয়া হয়েছে:


১. Maven দিয়ে Spring Security অন্তর্ভুক্ত করা

প্রয়োজনীয় নির্ভরতা (Dependencies)

আপনার pom.xml ফাইলে স্প্রিং সিকিউরিটি নির্ভরতা যুক্ত করুন:

<dependencies>
    <!-- Spring Boot Starter Security -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-security</artifactId>
    </dependency>

    <!-- Optional: Thymeleaf (for custom login pages) -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>
</dependencies>

ব্যাখ্যা:

  • spring-boot-starter-security স্প্রিং সিকিউরিটির সমস্ত মূল বৈশিষ্ট্য অন্তর্ভুক্ত করে।
  • যদি আপনি কাস্টম লগইন পেজ তৈরি করতে চান, তাহলে thymeleaf লাইব্রেরি অন্তর্ভুক্ত করতে পারেন।

Maven কমান্ড চালান

আপনার প্রোজেক্টের ডিপেন্ডেন্সি ডাউনলোড করার জন্য Maven কমান্ড চালান:

mvn clean install

২. Gradle দিয়ে Spring Security অন্তর্ভুক্ত করা

প্রয়োজনীয় নির্ভরতা (Dependencies)

আপনার build.gradle ফাইলে স্প্রিং সিকিউরিটির নির্ভরতা যুক্ত করুন:

dependencies {
    // Spring Boot Starter Security
    implementation 'org.springframework.boot:spring-boot-starter-security'

    // Optional: Thymeleaf (for custom login pages)
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
}

ব্যাখ্যা:

  • implementation কিওয়ার্ড ব্যবহার করে ডিপেন্ডেন্সি যোগ করা হয়।
  • কাস্টমাইজড লগইন পেজের জন্য thymeleaf অন্তর্ভুক্ত করুন।

Gradle কমান্ড চালান

ডিপেন্ডেন্সি ডাউনলোড এবং প্রোজেক্ট রিফ্রেশ করার জন্য Gradle কমান্ড চালান:

gradle build

৩. ডিপেন্ডেন্সি অন্তর্ভুক্ত করার পর কি হবে?

প্রাথমিক কনফিগারেশন

  1. Maven/Gradle দিয়ে স্প্রিং সিকিউরিটি অন্তর্ভুক্ত করার পরে, এটি ডিফল্ট সিকিউরিটি যোগ করবে।
  2. যখন আপনি আপনার অ্যাপ্লিকেশন চালাবেন:
    • প্রতিটি URL অ্যাক্সেস করার জন্য লগইন পেজ দেখা যাবে।
    • ডিফল্ট ইউজারনেম user এবং একটি জেনারেটেড পাসওয়ার্ড কনসোলে প্রদর্শিত হবে। উদাহরণ:

      Using generated security password: 3a1b2c3d4e
      

ডিফল্ট পাসওয়ার্ড নিষ্ক্রিয় করা

যদি আপনি কাস্টম ইউজার এবং পাসওয়ার্ড যুক্ত করতে চান, তাহলে একটি SecurityConfig ক্লাস তৈরি করুন:

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.security.web.SecurityFilterChain;

@Configuration
public class SecurityConfig {

    @Bean
    public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
        http
            .authorizeHttpRequests(auth -> auth
                .anyRequest().authenticated()
            )
            .formLogin();
        return http.build();
    }

    @Bean
    public PasswordEncoder passwordEncoder() {
        return new BCryptPasswordEncoder(); // Password Encryption
    }
}

উপসংহার

  • Maven বা Gradle এর মাধ্যমে স্প্রিং সিকিউরিটি সহজেই আপনার প্রোজেক্টে যোগ করা যায়।
  • ডিফল্ট সেটআপ আপনাকে নিরাপত্তার একটি বেসলাইন সরবরাহ করে, যা আপনি কাস্টমাইজ করতে পারবেন।
  • আপনার প্রয়োজন অনুযায়ী কাস্টম অথেনটিকেশন/অথরাইজেশন সেটআপ করার জন্য কনফিগারেশন কাস্টমাইজ করুন।
Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...